package com.huaxin.feignclient.system.models;

import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 用户基础信息实体类
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class User extends BaseModel {

    /**
     * 用户名
     */
    private String username;

    /**
     * 手机号（唯一，用于登录）
     */
    private String phone;

    /**
     * 加密后的密码
     */
    private String password;

    /**
     * 微信 OpenID
     */
    private String wechatOpenid;

    /**
     * 微信 UnionID
     */
    private String wechatUnionid;

    /**
     * 登录类型：1=手机号，2=微信
     */
    private Integer loginType;

    /**
     * 用户昵称
     */
    private String nickname;

    /**
     * 头像 URL
     */
    private String avatarUrl;

    /**
     * 用户类型（1=普通用户，2-企业用户）
     */
    private Integer userType;

    /**
     * 状态：0=禁用，1=启用
     */
    private Integer status = 1;

    /**
     * 区域
     */
    private String area;
    /**
     * 地址
     */
    private String address;
    /**
     * 经度
     */
    private String longitude;
    /**
     * 纬度
     */
    private String latitude;
    /**
     * 身份证-人物面
     */
    private String idCardCharacter;
    /**
     * 身份证-国徽面
     */
    private String idCardNationalEmblem;
    /**
     * 角色 ID
     */
    private String roleId;
    /**
     * 家庭 ID
     */
    private String familyId;

    /**
     * 组织ID
     */
    private String orgId;
    // orgId 已在 BaseModel 中定义，无需重复声明
    // created_at, updated_at, is_deleted 等字段也已继承
}